HTML Geolocation API
জিওলোকেশন API ব্যবহারকারীর বর্তমান অবস্থান পেতে ব্যবহার করা হয়।
দ্রষ্টব্য:
জিওলোকেশন API শুধুমাত্র নিরাপদ পরিবেশে যেমন HTTPS-এ উপলব্ধ।
পরামর্শ:
জিওলোকেশন এপিআই জিপিএস সহ ডিভাইসগুলির জন্য আরও নির্ভুল, উদাহরণস্বরূপ স্মার্টফোন বা স্মার্টওয়াচ।
ব্যবহারকারীর অবস্থান সনাক্ত করা হচ্ছে
ভৌগলিক অবস্থান API ব্যবহারকারীর বর্তমান অবস্থান অ্যাক্সেস করতে ব্যবহার করা হয়।
যেহেতু এটি গোপনীয়তার সাথে আপস করতে পারে, ব্যবহারকারী এটি অনুমোদন না করা পর্যন্ত অবস্থান উপলব্ধ নয়৷
ব্রাউজার সমর্থন
টেবিলের সংখ্যাগুলি প্রথম ব্রাউজার সংস্করণকে উপস্থাপন করে যা সম্পূর্ণরূপে ভূ-অবস্থান সমর্থন করে।
| API | Chrome | Edge | Firefox | Safari | Opera |
|---|---|---|---|---|---|
| Geolocation | 5.0 | 12.0 | 3.5 | 5.0 | 10.6 |
এইচটিএমএল জিওলোকেশন এপিআই ব্যবহার করে
Geolocation API navigator.geolocationএকটি কল দ্বারা অ্যাক্সেস করা হয় এটি ব্যবহারকারীকে ব্রাউজারকে ব্যবহারকারীর অবস্থানের ডেটা অ্যাক্সেস করার অনুমতি দিতে বলবে। ব্যবহারকারী গ্রহণ করলে, ব্রাউজার এই তথ্য অ্যাক্সেস করার জন্য ডিভাইসে উপলব্ধ সেরা কার্যকারিতা (উদাহরণস্বরূপ GPS) সন্ধান করবে।
getCurrentPosition()পদ্ধতিটি ব্যবহারকারীর বর্তমান অবস্থান ফেরত দিতে ব্যবহৃত হয়।
নীচের উদাহরণটি ব্যবহারকারীর বর্তমান অবস্থানের অক্ষাংশ এবং দ্রাঘিমাংশ প্রদান করে:
উদাহরণ
<script>
const x = document.getElementById("demo");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(success, error);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}
function success(position) {
x.innerHTML = "Latitude: " + position.coords.latitude +
"<br>Longitude: " + position.coords.longitude;
}
function error() {
alert("Sorry, no position available.");
}
</script>
উদাহরণ বর্ণনা:
- ভৌগলিক অবস্থান সমর্থিত কিনা তা পরীক্ষা করুন
- যদি ভূ-অবস্থান সমর্থিত হয়,
getCurrentPosition()পদ্ধতি চালান। অন্যথায়, ব্যবহারকারীকে একটি বার্তা প্রদর্শন করুন success()ফাংশনটি অক্ষাংশ এবং দ্রাঘিমাংশে ব্যবহারকারীর অবস্থান আউটপুট করেerror()ফাংশনgetCurrentPosition()ব্রাউজারে একটি পাঠ্য সতর্ক করে একটি ত্রুটি প্রদান করে
ত্রুটি হ্যান্ডলিং এবং দাবিত্যাগ
getCurrentPosition()পদ্ধতির দ্বিতীয় প্যারামিটারটি ত্রুটিগুলি পরিচালনা করতে ব্যবহৃত হয়। ব্যবহারকারীর অবস্থান প্রাপ্ত করতে ব্যর্থ হলে কার্যকর করার ফাংশন নির্দিষ্ট করে।
এখানে আরো নির্দিষ্ট ত্রুটি পরিচালনার একটি উদাহরণ:
উদাহরণ
function error(error) {
switch(error.code) {
case error.PERMISSION_DENIED:
x.innerHTML = "User denied the request for Geolocation."
break;
case error.POSITION_UNAVAILABLE:
x.innerHTML = "Location information is unavailable."
break;
case error.TIMEOUT:
x.innerHTML = "The request to get user location timed out."
break;
case error.UNKNOWN_ERROR:
x.innerHTML = "An unknown error occurred."
break;
}
}
অবস্থান-নির্দিষ্ট তথ্য
ভূ-অবস্থানও অবস্থান-নির্দিষ্ট তথ্যের জন্য খুবই উপযোগী, উদাহরণস্বরূপ:
- আপ টু ডেট স্থানীয় তথ্য
- ব্যবহারকারীর কাছাকাছি আকর্ষণ দেখাচ্ছে
- জিপিএস (জিপিএস)
getCurrentPosition()পদ্ধতি - তথ্য উপস্থাপনা
getCurrentPosition()পদ্ধতিটি সাফল্যের উপর একটি বস্তু প্রদান করে। অক্ষাংশ, দ্রাঘিমাংশ এবং স্পষ্টতা বৈশিষ্ট্য সবসময় প্রদান করা হয়. উপলব্ধ থাকলে অন্যান্য বৈশিষ্ট্য প্রদান করা হয়:
| বৈশিষ্ট্য | তথ্য প্রদান করা হয়েছে |
|---|---|
coords.latitude |
দশমিক সংখ্যা হিসাবে অক্ষাংশ(সর্বদা প্রদান করা হয়) |
coords.longitude |
দশমিক সংখ্যা হিসাবে দ্রাঘিমাংশ(সর্বদা প্রদান করা হয়) |
coords.accuracy |
অবস্থান নির্ভুলতা(সর্বদা প্রদান করা হয়) |
coords.altitude |
সমুদ্রপৃষ্ঠ থেকে মিটারে উচ্চতা মানে(প্রাপ্যতা সাপেক্ষে) |
coords.altitudeAccuracy |
অবস্থানের উচ্চতা নির্ভুলতা(প্রাপ্যতা সাপেক্ষে) |
coords.heading |
উত্তর থেকে ঘড়ির কাঁটার দিকে ডিগ্রীতে যাচ্ছে(প্রাপ্যতা সাপেক্ষে) |
coords.speed |
মিটার প্রতি সেকেন্ডে গতি(প্রাপ্যতা সাপেক্ষে) |
timestamp |
প্রতিক্রিয়ার তারিখ/সময়(প্রাপ্যতা সাপেক্ষে) |
জিওলোকেশন অবজেক্ট - অন্যান্য আকর্ষণীয় পদ্ধতি
জিওলোকেশন অবজেক্টের অন্যান্য আকর্ষণীয় পদ্ধতি রয়েছে:
watchPosition()- ব্যবহারকারীর বর্তমান অবস্থান প্রদান করে এবং ব্যবহারকারীর চলাফেরা করার সাথে সাথে আপডেট করা অবস্থান প্রদান করা অব্যাহত রাখে (যেমন একটি গাড়িতে জিপিএস)।clearWatch()-watchPosition()পদ্ধতি বন্ধ করে দেয়।
উদাহরণ
<script>
const x = document.getElementById("demo");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.watchPosition(success, error);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}
function success(position) {
x.innerHTML = "Latitude: " + position.coords.latitude +
"<br>Longitude: " + position.coords.longitude;
}
function error(error) {
switch(error.code) {
case error.PERMISSION_DENIED:
x.innerHTML = "User denied the request for Geolocation."
break;
case error.POSITION_UNAVAILABLE:
x.innerHTML = "Location information is unavailable."
break;
case error.TIMEOUT:
x.innerHTML = "The request to get user location timed out."
break;
case error.UNKNOWN_ERROR:
x.innerHTML = "An unknown error occurred."
break;
}
}
</script>
ইন্টারেক্টিভ অনুশীলন
জিওলোকেশন API বাস্তবায়ন
আপনার বর্তমান অবস্থান পেতে বোতামে ক্লিক করুন. আপনার ব্রাউজার অনুমতি চাইবে।
মনোযোগ:
এই API ব্যবহারকারীর অনুমতি প্রয়োজন. ব্যবহারকারীর অনুমতি প্রত্যাখ্যান করা হলে, অবস্থানের ডেটা পাওয়া যাবে না। শুধুমাত্র HTTPS সংযোগে কাজ করে।